package com.ifp.opengate.boot.bean.config;

public class HystrixInfoBean {

    private String ghiStrategy;

    private String ghiTimeoutinmilliseconds;

    private String ghiTimeoutenabled;

    private String ghiInterruptontimeout;

    private String ghiInterruptoncancel;

    private String ghiMaxconcurrentrequests;

    private String ghiCoresize;

    private String ghiMaximumsize;

    private String ghiMaxqueuesize;

    private String ghiQsizerejectionthreshold;

    private String ghiKeepalivetimeminutes;

    private String ghiAllowdiverge;

    private String ghiCircuitbreakerenabled;

    private String ghiRequestvolumethreshold;

    private String ghiSleepwindowinmilliseconds;

    private String ghiErrorthresholdpercentage;

    private String ghiForceopen;

    private String ghiForceclosed;

    private String ghiGroupkey;

    private String ghiCommandkey;

    private String event;

    private String key;

    public HystrixInfoBean() {}

    public HystrixInfoBean(String strategy, String timeoutinmilliseconds, String timeoutenabled,
        String interruptontimeout, String interruptoncancel, String maxconcurrentrequests, String coresize,
        String maximumsize, String maxqueuesize, String qsizerejectionthreshold, String keepalivetimeminutes,
        String allowdiverge, String circuitbreakerenabled, String requestvolumethreshold,
        String sleepwindowinmilliseconds, String errorthresholdpercentage, String forceopen, String forceclosed,
        String groupkey, String commandkey, String event, String key) {
        ghiStrategy = strategy;
        ghiTimeoutinmilliseconds = timeoutinmilliseconds;
        ghiTimeoutenabled = timeoutenabled;
        ghiInterruptontimeout = interruptontimeout;
        ghiInterruptoncancel = interruptoncancel;
        ghiMaxconcurrentrequests = maxconcurrentrequests;
        ghiCoresize = coresize;
        ghiMaximumsize = maximumsize;
        ghiMaxqueuesize = maxqueuesize;
        ghiQsizerejectionthreshold = qsizerejectionthreshold;
        ghiKeepalivetimeminutes = keepalivetimeminutes;
        ghiAllowdiverge = allowdiverge;
        ghiCircuitbreakerenabled = circuitbreakerenabled;
        ghiRequestvolumethreshold = requestvolumethreshold;
        ghiSleepwindowinmilliseconds = sleepwindowinmilliseconds;
        ghiErrorthresholdpercentage = errorthresholdpercentage;
        ghiForceopen = forceopen;
        ghiForceclosed = forceclosed;
        ghiGroupkey = groupkey;
        ghiCommandkey = commandkey;
        this.event = event;
        this.key = key;
    }

    public String getGhiStrategy() {
        return ghiStrategy;
    }

    public void setGhiStrategy(String ghiStrategy) {
        this.ghiStrategy = ghiStrategy;
    }

    public String getGhiTimeoutinmilliseconds() {
        return ghiTimeoutinmilliseconds;
    }

    public void setGhiTimeoutinmilliseconds(String ghiTimeoutinmilliseconds) {
        this.ghiTimeoutinmilliseconds = ghiTimeoutinmilliseconds;
    }

    public String getGhiTimeoutenabled() {
        return ghiTimeoutenabled;
    }

    public void setGhiTimeoutenabled(String ghiTimeoutenabled) {
        this.ghiTimeoutenabled = ghiTimeoutenabled;
    }

    public String getGhiInterruptontimeout() {
        return ghiInterruptontimeout;
    }

    public void setGhiInterruptontimeout(String ghiInterruptontimeout) {
        this.ghiInterruptontimeout = ghiInterruptontimeout;
    }

    public String getGhiInterruptoncancel() {
        return ghiInterruptoncancel;
    }

    public void setGhiInterruptoncancel(String ghiInterruptoncancel) {
        this.ghiInterruptoncancel = ghiInterruptoncancel;
    }

    public String getGhiMaxconcurrentrequests() {
        return ghiMaxconcurrentrequests;
    }

    public void setGhiMaxconcurrentrequests(String ghiMaxconcurrentrequests) {
        this.ghiMaxconcurrentrequests = ghiMaxconcurrentrequests;
    }

    public String getGhiCoresize() {
        return ghiCoresize;
    }

    public void setGhiCoresize(String ghiCoresize) {
        this.ghiCoresize = ghiCoresize;
    }

    public String getGhiMaximumsize() {
        return ghiMaximumsize;
    }

    public void setGhiMaximumsize(String ghiMaximumsize) {
        this.ghiMaximumsize = ghiMaximumsize;
    }

    public String getGhiMaxqueuesize() {
        return ghiMaxqueuesize;
    }

    public void setGhiMaxqueuesize(String ghiMaxqueuesize) {
        this.ghiMaxqueuesize = ghiMaxqueuesize;
    }

    public String getGhiQsizerejectionthreshold() {
        return ghiQsizerejectionthreshold;
    }

    public void setGhiQsizerejectionthreshold(String ghiQsizerejectionthreshold) {
        this.ghiQsizerejectionthreshold = ghiQsizerejectionthreshold;
    }

    public String getGhiKeepalivetimeminutes() {
        return ghiKeepalivetimeminutes;
    }

    public void setGhiKeepalivetimeminutes(String ghiKeepalivetimeminutes) {
        this.ghiKeepalivetimeminutes = ghiKeepalivetimeminutes;
    }

    public String getGhiAllowdiverge() {
        return ghiAllowdiverge;
    }

    public void setGhiAllowdiverge(String ghiAllowdiverge) {
        this.ghiAllowdiverge = ghiAllowdiverge;
    }

    public String getGhiCircuitbreakerenabled() {
        return ghiCircuitbreakerenabled;
    }

    public void setGhiCircuitbreakerenabled(String ghiCircuitbreakerenabled) {
        this.ghiCircuitbreakerenabled = ghiCircuitbreakerenabled;
    }

    public String getGhiRequestvolumethreshold() {
        return ghiRequestvolumethreshold;
    }

    public void setGhiRequestvolumethreshold(String ghiRequestvolumethreshold) {
        this.ghiRequestvolumethreshold = ghiRequestvolumethreshold;
    }

    public String getGhiSleepwindowinmilliseconds() {
        return ghiSleepwindowinmilliseconds;
    }

    public void setGhiSleepwindowinmilliseconds(String ghiSleepwindowinmilliseconds) {
        this.ghiSleepwindowinmilliseconds = ghiSleepwindowinmilliseconds;
    }

    public String getGhiErrorthresholdpercentage() {
        return ghiErrorthresholdpercentage;
    }

    public void setGhiErrorthresholdpercentage(String ghiErrorthresholdpercentage) {
        this.ghiErrorthresholdpercentage = ghiErrorthresholdpercentage;
    }

    public String getGhiForceopen() {
        return ghiForceopen;
    }

    public void setGhiForceopen(String ghiForceopen) {
        this.ghiForceopen = ghiForceopen;
    }

    public String getGhiForceclosed() {
        return ghiForceclosed;
    }

    public void setGhiForceclosed(String ghiForceclosed) {
        this.ghiForceclosed = ghiForceclosed;
    }

    public String getGhiGroupkey() {
        return ghiGroupkey;
    }

    public void setGhiGroupkey(String ghiGroupkey) {
        this.ghiGroupkey = ghiGroupkey;
    }

    public String getGhiCommandkey() {
        return ghiCommandkey;
    }

    public void setGhiCommandkey(String ghiCommandkey) {
        this.ghiCommandkey = ghiCommandkey;
    }

    @Override
    public String toString() {
        final StringBuilder sb = new StringBuilder("{");
        sb.append("\"ghiStrategy\":\"").append(ghiStrategy).append('\"');
        sb.append(",\"ghiTimeoutinmilliseconds\":\"").append(ghiTimeoutinmilliseconds).append('\"');
        sb.append(",\"ghiTimeoutenabled\":\"").append(ghiTimeoutenabled).append('\"');
        sb.append(",\"ghiInterruptontimeout\":\"").append(ghiInterruptontimeout).append('\"');
        sb.append(",\"ghiInterruptoncancel\":\"").append(ghiInterruptoncancel).append('\"');
        sb.append(",\"ghiMaxconcurrentrequests\":\"").append(ghiMaxconcurrentrequests).append('\"');
        sb.append(",\"ghiCoresize\":\"").append(ghiCoresize).append('\"');
        sb.append(",\"ghiMaximumsize\":\"").append(ghiMaximumsize).append('\"');
        sb.append(",\"ghiMaxqueuesize\":\"").append(ghiMaxqueuesize).append('\"');
        sb.append(",\"ghiQsizerejectionthreshold\":\"").append(ghiQsizerejectionthreshold).append('\"');
        sb.append(",\"ghiKeepalivetimeminutes\":\"").append(ghiKeepalivetimeminutes).append('\"');
        sb.append(",\"ghiAllowdiverge\":\"").append(ghiAllowdiverge).append('\"');
        sb.append(",\"ghiCircuitbreakerenabled\":\"").append(ghiCircuitbreakerenabled).append('\"');
        sb.append(",\"ghiRequestvolumethreshold\":\"").append(ghiRequestvolumethreshold).append('\"');
        sb.append(",\"ghiSleepwindowinmilliseconds\":\"").append(ghiSleepwindowinmilliseconds).append('\"');
        sb.append(",\"ghiErrorthresholdpercentage\":\"").append(ghiErrorthresholdpercentage).append('\"');
        sb.append(",\"ghiForceopen\":\"").append(ghiForceopen).append('\"');
        sb.append(",\"ghiForceclosed\":\"").append(ghiForceclosed).append('\"');
        sb.append(",\"ghiGroupkey\":\"").append(ghiGroupkey).append('\"');
        sb.append(",\"ghiCommandkey\":\"").append(ghiCommandkey).append('\"');
        sb.append(",\"event\":\"").append(event).append('\"');
        sb.append(",\"key\":\"").append(key).append('\"');
        sb.append('}');
        return sb.toString();
    }

    public String getKey() {
        return key;
    }

    public void setKey(String key) {
        this.key = key;
    }

    public String getEvent() {
        return event;
    }

    public void setEvent(String event) {
        this.event = event;
    }
}
